#include "tjson.h"

tJson::tJson(QObject *parent)
    : QObject{parent}
{

}

bool tJson::validateJson(QString jsonStr)
{
    QString inputJson = jsonStr;

    QJsonParseError error;
    QJsonDocument::fromJson(inputJson.toUtf8(), &error);

    if (error.error != QJsonParseError::NoError)
    {
        return false;
    }
    else
    {
        return true;
    }
}
QString tJson::dictToJsonString(const QVariantMap &dict)
{
    QJsonObject jsonObj = QJsonObject::fromVariantMap(dict);
    QJsonDocument jsonDoc(jsonObj);
    return QString(jsonDoc.toJson(QJsonDocument::Compact));
}

QVariantMap tJson::jsonStringToDict(const QString &jsonStr)
{
    QJsonDocument jsonDoc = QJsonDocument::fromJson(jsonStr.toUtf8());
    return jsonDoc.toVariant().toMap();
}
